package cn.com.tiptop.license.entity;

import java.io.Serializable;

import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableName;
import java.io.Serializable;

/**
 * <p>
 * 最大值控制类型：比如登录/在线/注册等
 * </p>
 *
 * @author qing
 * @since 2017-10-26
 */
@TableName("tb_license_controller")
public class LicenseController extends Model<LicenseController> {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
	@TableId(value="id", type= IdType.AUTO)
	private Long id;
    /**
     * 绑定应用id
     */
	@TableField("application_id")
	private Long applicationId;
    /**
     * 控制名称
     */
	private String name;
    /**
     * 类型
     */
	private String type;
    /**
     * 可授权范围最小值
     */
	private Integer minimum;
    /**
     * 可授权范围最大值
     */
	private Integer maximum;
    /**
     * 是否允许永久授权
     */
	private Boolean perpetual;
    /**
     * 备注
     */
	private String remark;
    /**
     * 状态
     */
	private Integer status;
    /**
     * 创建时间
     */
	@TableField("create_time")
	private Date createTime;


	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public Long getApplicationId() {
		return applicationId;
	}

	public void setApplicationId(Long applicationId) {
		this.applicationId = applicationId;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	public Integer getMinimum() {
		return minimum;
	}

	public void setMinimum(Integer minimum) {
		this.minimum = minimum;
	}

	public Integer getMaximum() {
		return maximum;
	}

	public void setMaximum(Integer maximum) {
		this.maximum = maximum;
	}

	public Boolean getPerpetual() {
		return perpetual;
	}

	public void setPerpetual(Boolean perpetual) {
		this.perpetual = perpetual;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	@Override
	protected Serializable pkVal() {
		return this.id;
	}

	@Override
	public String toString() {
		return "LicenseController{" +
			"id=" + id +
			", applicationId=" + applicationId +
			", name=" + name +
			", type=" + type +
			", minimum=" + minimum +
			", maximum=" + maximum +
			", perpetual=" + perpetual +
			", remark=" + remark +
			", status=" + status +
			", createTime=" + createTime +
			"}";
	}
}
